package com.zjmzxfzhl.modules.app.mapper;

import java.util.List;

import com.zjmzxfzhl.modules.app.entity.AppTask;
import com.zjmzxfzhl.modules.app.form.AppProjVo;
import com.zjmzxfzhl.modules.app.form.ProjCrumbVo;
import com.zjmzxfzhl.modules.app.form.ProjSumVo;
import com.zjmzxfzhl.modules.app.form.TaskCrumbVo;
import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zjmzxfzhl.modules.app.entity.AppProj;

/**
 * Mapper
 * 
 * @author 张森荣
 */
public interface AppProjMapper extends BaseMapper<AppProj> {
    /**
     * 查询列表
     * 
     * @param page
     * @param entity
     * @return
     */
    public List<AppProj> list(IPage<AppProj> page, @Param("entity") AppProjVo entity);

    /**
     * 需要展开的节点数据
     * @param parentId 父节点
     * @param level 展开的层级
     * @param parentLevel 父层级
     * @return
     */
    public List<AppProj> treeData(@Param("parentId")String parentId, @Param("level")Integer level, @Param("parentLevel")Integer parentLevel,@Param("myProj")String myProj);

    /**
     * 计算数量
     *
     * @param entity
     * @return
     */
    public Integer selectRowCount(@Param("entity") AppProj entity);

    /**
     * 统计项目概括
     *
     * @param masterUserId
     * @return
     */
    public ProjSumVo getProjSun(@Param("masterUserId") String masterUserId);

    /**
     * 统计项目概括
     *
     * @param projIds
     * @return
     */
    public List<AppProj> getMeetProj(@Param("idsArr") String[] idsArr);

    /**
     * 面包屑导航
     * @param projId 子节点
     * @return
     */
    List<ProjCrumbVo> projCrumb(@Param("projId") String projId);
}
